<?php
namespace model;

class dbModel {
    private $databaseServerIP = "195.128.174.38";
    private $databaseServerDb = "wse336700_1";
    private $databaseServerUsername = "wse336700";
    private $databaseServerPassword = "8nq8cf4963";
    private $connect;


    /**
    * med constructor-funktionen så kan vi välja att skapa en ny databas om vi vill driftsätta vår applikation på en annan server
    * fyll då bara i de nya kontouppgifterna ovan och ta sedan bort kommenteringstecknen på rad 17
    */
    public function __construct()     {
        //ta bort kommenterings-strecken nedan om man vill skapa en ny databas
        //$this->createApplicationDatabase();
    }



   /**
    * med denna funktionen så ansluter vi mot vår mysql-databas
    */
    public function connect()     {

        $this->connect = mysql_connect($this->databaseServerIP, $this->databaseServerUsername, $this->databaseServerPassword);
        if (!$this->connect) {
            die('Could not connect: ' . mysql_error());
        }
        mysql_select_db($this->databaseServerDb, $this->connect) or die('Could not select database.');
    }


    /**
    * med denna funktionen så kopplar vi från vår anslutning
    */
    public function close()     {
        mysql_close($this->connect);
    }


   /**
    * med denna funktionen så skapar vi våra databaser om applikationen ska driftsättas på en annan server
    * Databas-uppgifterna ovan måste då ändras till de nya. För att kunna köra funktionen nedan så måste man ta bort
    * kommenteringstecknen i construktorfunktionen (rad 17)
    */
    public function createApplicationDatabase()     {

        $this->connect();

        //här skapar vi själva databasen
        mysql_query("CREATE DATABASE " . $this->databaseServerDb);

        //här skapas den första tabellen blogposts
        mysql_query("CREATE TABLE blogposts(
            id INT (5) NOT NULL AUTO_INCREMENT,
            PRIMARY KEY(id),
            header VARCHAR(40) NOT NULL ,
            text VARCHAR(500) NOT NULL ,
            date VARCHAR(60) NOT NULL ,
            user VARCHAR(20) NOT NULL
            )");

        //här sätts rätt teckentabell
        mysql_query("ALTER TABLE blogposts CONVERT TO CHARACTER SET utf8 COLLATE utf8_swedish_ci");


        //här skapas den andra tabellen comments
        mysql_query("CREATE TABLE comments(
            id INT (5) NOT NULL AUTO_INCREMENT,
            PRIMARY KEY(id),
            user VARCHAR(20) NOT NULL ,
            text VARCHAR(300) NOT NULL ,
            date VARCHAR(60) NOT NULL ,
            blogpostId INT(10) NOT NULL
            )");

        //här sätts rätt teckentabell
        mysql_query("ALTER TABLE comments CONVERT TO CHARACTER SET utf8 COLLATE utf8_swedish_ci");


        //och här skapas den sista tabellen users
        mysql_query("CREATE TABLE users(
            id INT (5) NOT NULL AUTO_INCREMENT,
            PRIMARY KEY(id),
            username VARCHAR(20) NOT NULL ,
            password VARCHAR(20) NOT NULL ,
            admin_user INT(5) NOT NULL
            )");

        //här sätts rätt teckentabell
        mysql_query("ALTER TABLE users CONVERT TO CHARACTER SET utf8 COLLATE utf8_swedish_ci");

        //här lägger vi in en Admin-användare
        mysql_query("INSERT INTO users (username, password, admin_user) VALUES ('Admin', 'Password', '1' )");

        $this->close();

    }


}

